#include<stdio.h>
#include<math.h>
int main()
{
	int i,j;
	char a[15][15];
	
	//打印初始棋盘
	printf("   01 02 03 04 05 06 07 08 09 10 11 12 13 14 15\n");  //坐标辅助
	for(i=0;i<15;i++)
	{
		printf("%.2d",i+1);//坐标辅助
		for(j=0;j<15;j++)
		{
			a[i][j]='+';
			printf(" %c ",a[i][j]);
		}
		printf("\n");
	}
	
	
	printf("先手符号为‘X’，后手符号为‘O’，棋子横纵坐标范围为1-15\n");
	int n=1;
	int p,q;
	int r=0;
	while(r!=1)
	{
		if(n%2==1)
		{
			printf("第%d步，先手下，符号为‘X’，输入棋子坐标，格式为x y\n",n);
			scanf("%d %d", &p,&q);
			p--;
			q--;
			if(a[p][q]=='+')
				a[p][q]='X';
			else if(a[p][q]=='X'||a[p][q]=='O')
			{
				printf("重复落子，请重新输入\n");
				continue;
			}
		}
		else if(n%2==0)
		{
			printf("第%d步，后手下，符号为‘O’，输入棋子坐标，格式为x y\n",n);
			scanf("%d %d", &p,&q);
			p--;
			q--;
			if(a[p][q]=='+')
				a[p][q]='O';
			else if(a[p][q]=='X'||a[p][q]=='O')
			{
				printf("重复落子，请重新输入\n");
				continue;
			}
		}
		
		//打印棋盘
		printf("   01 02 03 04 05 06 07 08 09 10 11 12 13 14 15\n");//坐标辅助		
		for(i=0;i<15;i++)
		{	
			printf("%.2d",i+1);//坐标辅助	
			for(j=0;j<15;j++)
			{
				printf(" %c ",a[i][j]);
			}	
			printf("\n");
		}	
			
		
		//判定胜负
		int b=1,c=1,d=1,e=1;
		//横排成五子
		for(i=1;i<5;i++)
		{
			if(p+i<11&&a[p+i][q]==a[p][q])
				b++;
			else break;
		}
		for(i=1;i<5;i++)
		{		
			if(p-i>=4&&a[p-i][q]==a[p][q])
				b++;
			else break;
		}
		if(b>=4) r=1;
		
		//竖排成五子
		for(i=1;i<5;i++)
		{
			if(q+i<15&&a[p][q+i]==a[p][q])
				c++;
			else break;
		}
		for(i=1;i<5;i++)
		{
			if(q-i>=4&&a[p][q-i]==a[p][q])
				c++;
			else break;
		}
		if(c>=4) r=1;
		
		//撇方向成五子
		for(i=1;i<5;i++)
		{
			if(p+i<15&&q+i<15&&a[p+i][q+i]==a[p][q])
				d++;
			else break;
		}
		for(i=1;i<5;i++)
		{
			if(p-i>=4&&q-i>=4&&a[p-i][q-i]==a[p][q])
				d++;
			else break;
		}
		if(d>=4) r=1;
		
		//捺方向成五子
		for(i=1;i<5;i++)
		{
			if(p+i<15&&q-i>=4&&a[p+i][q-i]==a[p][q])
				e++;
			else break;
		}
		for(i=1;i<5;i++)
		{
			if(p-i>=4&&q+i<15&&a[p-i][q+i]==a[p][q])
				e++;
			else break;
		}
		if(e>=4) r=1;
		
		n++;
			
	}
	
	if(n%2==0)
		printf("先手获胜");
	else if(n%2==1)
		printf("后手获胜");
}